<?php
/*******************************************************************
 * ServicesConfigHandler.php
 * Copyright (C) 2006-2007 Midnight Coders, LLC
 *
 * The contents of this file are subject to the Mozilla Public License
 * Version 1.1 (the "License"); you may not use this file except in
 * compliance with the License. You may obtain a copy of the License at
 * http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS"
 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
 * License for the specific language governing rights and limitations
 * under the License.
 *
 * The Original Code is WebORB Presentation Server (R) for PHP.
 * 
 * The Initial Developer of the Original Code is Midnight Coders, LLC.
 * All Rights Reserved.
 ********************************************************************/



require_once(WebOrb . "Config/ORBConfig.php");
require_once(WebOrb . "Config/ORBConfigHandler.php");

class ServicesConfigHandler
    extends ORBConfigHandler
{

    public function configure($parent, $configContext, DOMNode $documentElement)
    {
        $section = $documentElement->getElementsByTagName("services")->item(0);  // check required !
        
       $this->m_configNode = $section;
       $this->setORBConfig($configContext);
      
        foreach (($section->childNodes) as $element)
        {
            if (!($element instanceof DOMElement))
            {
                continue;
            }

            $nameElements = $element->getElementsByTagName("name");
            $serviceName = trim($nameElements->item(0)->nodeValue);

            $idElements = $element->getElementsByTagName("serviceId");
            $serviceId = trim($idElements->item(0)->nodeValue);
            ORBConfig::getInstance()->getServiceRegistry()->_addMapping($serviceName, $serviceId, array());
        }
    }

}

?>
